package com.yuheadline.media.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.dust.yuheadline.common.utils.PageResult;
import com.dust.yuheadline.common.utils.Result;
import com.yuheadline.model.media.domain.MaterialImage;
import com.yuheadline.model.media.dto.MaterialPageQueryDto;
import org.springframework.lang.NonNull;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * 素材表 Service 接口
 *
 * @author 高翔宇
 * @since 2024-05-2, 周四, 10:57
 */
public interface MaterialService extends IService<MaterialImage> {
    /**
     * 分页查询当前用户的素材
     */
    PageResult<List<MaterialImage>> pageList(@NonNull MaterialPageQueryDto materialPageQueryDto);

    /**
     * 上传素材
     */
    Result<?> upload(@NonNull MultipartFile file);

    /**
     * 根据id删除素材
     */
    Result<?> deleteById(@NonNull Long id);
}